Skip to content
New issue

Have a question about this project? Sign up for a free GitHub account to open an issue and contact its maintainers and the community.

By clicking “Sign up for GitHub”, you agree to our terms of service and privacy statement. We’ll occasionally send you account related emails.

Already on GitHub? Sign in to your account

Add names for some instructions within groups #19

Merged
merged 1 commit into from
Apr 9, 2024

Conversation

ThinkOpenly
Copy link
Owner

Some instructions are grouped in a single mapping clause assembly where the respective mnemonics are embedded within a separate mapping.

For instructions which are not grouped, the name of the instruction can be added as an attribute to any of the instruction-specific constructs.

For grouped instructions, the attribute needs to be added to a construct at the granularity of the specific instruction. Here, we attach the attribute within the individual element of the mapping that includes the actual instruction mnemonic.

This approach is still insufficient for mnemonics that are constructed:

mapping clause assembly = VLSEGTYPE(nf, vm, rs1, width, vd)
  <-> "vl" ^ nfields_string(nf) ^ "e" ^ vlewidth_bitsnumberstr(width) ^ ".v" [...]

...so more thought is needed here.

Also, I'm settling on a convention of using lower case (not Leading Caps), at least for now. This matches how the instruction names are written in the ISA specification, at least for those instructions for which the name is actually provided. :-/

Some instructions are grouped in a single `mapping clause assembly`
where the respective mnemonics are embedded within a separate `mapping`.

For instructions which are _not_ grouped, the name of the instruction
can be added as an attribute to any of the instruction-specific constructs.

For grouped instructions, the attribute needs to be added to a construct
at the granularity of the specific instruction. Here, we attach the
attribute within the individual element of the `mapping` that includes
the actual instruction mnemonic.

This approach is still insufficient for mnemonics that are constructed:
```
mapping clause assembly = VLSEGTYPE(nf, vm, rs1, width, vd)
  <-> "vl" ^ nfields_string(nf) ^ "e" ^ vlewidth_bitsnumberstr(width) ^ ".v" [...]
```
...so more thought is needed here.

Also, I'm settling on a convention of using lower case (not Leading Caps),
at least for now. This matches how the instruction names are written in
the ISA specification, at least for those instructions for which the name
is actually provided. :-/
@ThinkOpenly ThinkOpenly merged commit 65fca04 into JSON Apr 9, 2024
2 checks passed
@ThinkOpenly ThinkOpenly deleted the names-in-mappings branch April 9, 2024 18:37
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment
Labels
None yet
Projects
None yet
Development

Successfully merging this pull request may close these issues.

1 participant